The present invention relates to the transmission of telecommunications data, and more particularly to a method of increasing the data transmitting capacity using the minicells of an asynchronous transmission mode (ATM).
ATM is a standard protocol for transmitting asynchronous telecommunications data. This protocol is based on the transmission of data in fixed size data packets known as ATM cells. Each ATM cell exhibits a singular format comprising a 48 octet payload portion and a 5 octet header portion. ATM is well known in the art.
Unfortunately, ATM does not efficiently transport low bit rate data as the length of a typical low bit rate data packet is significantly less than 48 octets (i.e., the length of an ATM cell payload). Any unused portion of an ATM cell payload is filled with xe2x80x9cpadding bitsxe2x80x9d. When padding bits are inserted rather than data, bandwidth is wasted. The insertion of padding bits may also result in unacceptable transmission delays, which may be detrimental, especially when the data being transported is highly sensitive to delays, such as voice-type data.
An ATM adaptation layer, known as AAL2, has been developed for the purpose of improving the efficiency of ATM when employed to transport low bit rate data. Referring to FIG. 1, AAL2 operates by storing low bit rate data in small, variable length data packets called minicells 111 (sometimes referred to as microcells or short packets). An improvement in bandwidth utilization is achieved by inserting several minicells into the payload of a single ATM cell, such as ATM cell 121. In order to further improve bandwidth utilization, a minicell, for example minicell 131, may be segmented so that it overlaps two ATM cells as illustrated.
More recently, a new standard for carrying compressed voice on Asynchronous Transfer Mode (ATM), Recommendation I.363.2 (hereinafter I.363.2), has been approved by the International Telecommunication Union (ITU). This allows up to 255 connections to be simultaneously multiplexed on an ATM Virtual Channel Connection (VCC). The eight bit connection identifier (CID) field in the ATM Adaptation Layer type 2 Common Part Sublayer (AAL2-CPS) packet is used for this purpose. If more than these 255 AAL2 connections are desired, a new ATM-VCC is needed.
FIG. 2 illustrates an AAL2-CPS packet according to I.363.2. This packet is made up of a connection identifier (CID) field 211, a length indicator (LI) field 221, a user to user indication (UUI) field 231, a header error control (HEC) field 241 and a payload field 251.
The CID field 211 is eight bits in length, allowing up to 255 connections ranging from CID-1 to CID-255. Typically, however, only up to 248 connections are utilized. These range from CID-8 to CID-255. CID-0 is reserved for padding, i.e., if the next octet after the last octet in a previous AAL2-CPS packet is zero, then the remainder of the ATM cell is empty. In other words, if the octet where a new AAL2-CPS packet is supposed to start is zero, then the remaining octets in the ATM cell is filled with zeroes and is considered to be padding. The receiver, when it detects a zero octet where a new AAL2-CPS packet is supposed to start, disregards the remainder of the ATM cell. The LI field 221 is five bits in length and indicates the number of octets in the payload. It ranges from LI-0 to LI-44 which corresponds to payloads of 1 to 45 octets. The UUI field 231 is also five bits in length and is transparently conveyed from one end user to the other end user. That is, the user may or may not be aware of this activity; in this case, the user may or may not be aware of the UUI field being conveyed. It may be considered as a field in which the user may place any type of information as long as that information is not placed in the range of UUI-26 to UUI-31 which are reserved for segmentation and OAM usage. By limiting the segmentation and OAM to bits 26 to 31, CID expansion is facilitated according to exemplary embodiments of the present invention. The HEC field 241, also five bits in length, may be used for verifying the integrity of the AAL2-CPS packet header.
This particular number of CIDs (i.e., 255) results from the fact that the ATM multiplexing capability can be used to increase the number of AAL2 connections. However, the ATM cell header in every cell takes about 10% of the bandwidth. Therefore, for every 48 octets of payload, 5 octets are inserted. In instances where bandwidth is extremely expensive, it is economically beneficial if the AAL2-CPS packets are placed directly on the E1 or T1 time-division multiplex (TDM) lines. The number of AAL2 connections that can be indicated by the CID, however, will not be sufficient in such cases.
FIG. 3 illustrates a conventional AAL2 multiplexing technique with added resilience against loss of delineation in the form of a start octet.
The basic delineation is provided by the fixed size ATM cells 301, 302 and 303. The fact that the ATM cells come xe2x80x9cback to backxe2x80x9d every 53 octets makes it easy to use a receiver state machine that takes this into account. The ATM header 311 of 5 octets contains a HEC field 321 that makes it possible for the receiver to check the integrity of the ATM cell header. If the HEC matches, it is highly probable that the receiver will find the header and if the next header matches, the probability increases even further. Under normal practice, if six headers in a sequence match, the receiver is considered to be synchronized. Furthermore, due to the 53 octet length, the state machine does not have to leave the sync state at a first error in the ATM cell header. If it is repeated a predetermined number of times (e.g., six times), however, it is considered to no longer be in the synchronized state. The same technique is more difficult to apply to the AAL2 demultiplexing since the AAL2-CPS packets 391 to 397 may have variable sizes. The length indicator 351 provided in the header of each AAL2-CPS packet is used to locate the start of the next AAL2-CPS packet. The entire AAL2-CPS packet header is protected by a HEC that is similar to the one for the ATM cell. This ensures that the integrity of LI can be checked.
In addition, an offset field 323 of six binary coded bits is inserted as a first octet in the payload of every ATM cell. The offset field contains a pointer that makes it possible to find the first AAL2-CPS packet, at every new ATM cell, regardless of the length indicator value 351. The pointer is encapsulated in a start octet 331. The start octet 331 also includes a sequence number bit 325, working as a modulo-2 counter, making it possible to detect if ATM cells have been lost, single or odd. The start octet is protected by a parity bit 327. If no remaining AAL2-CPS packets exist to fill an ATM cell, the remainder is padded by inserting a zero in every octet to the end of the ATM cell.
With eight bits allocated to the CID, the indication provided by the CID as well as the number of connections simultaneously multiplexed on an ATM-VCC is limited to 255 although, typically, only 248 connections are used. What is desired, therefore, is a method for increasing the number of multiplexed connections.
It is, therefore, an object of the invention to overcome the aforementioned limitations of conventional AAL2 connections for transmitting telecommunications information.
This is achieved by multiplexing a plurality ATM-VCCs into a single channel. Multiplexing a plurality of AAL2 minicells within an ATM into a VCC is known. The eight bits of the CID field of the minicell are used to identify up to 255 of these connections which have been multiplexed into one VCC. Each VCC containing AAL2 minicells is identified by a virtual channel indicator (VCI). In order to identify a plurality of ATM-VCCs that are multiplexed into a single channel, the five bits of the UUI field of the minicell are utilized to identify up to twenty five such multiplexed VCCs.
The CID field is used as an indicator for the VCC to obtain a VCI value. This indicator is used to address a VCI table containing a pointer for each VCC that is being multiplexed. The value of this pointer is added to the CID value to determine an address for looking up within a mapping table where a new CID value derived from the addition of the pointer to the CID value is stored in the UUI field.
In an alternative embodiment, a method is also disclosed for demultiplexing a plurality of ATM-VCCs from a single channel into a plurality of minicells. All information that is not part of the AAL2 minicell including padding and ATM headers is removed. The remaining information is placed in a first-in-first-out format. Using the LI field of the minicell, the boundaries of the minicells are determined. The CID and UUI fields are used to address a mapping table within which each combination of these two fields has its own entry. The new values for CID and UUI are located within this table. These values are used to determine the contents of the minicell.